約 5,776,366 件
https://w.atwiki.jp/kai26cf/pages/68.html
DATABASE いろいろなデータのまとめです。 もちろんWikiなんで誰でも編集できます。 Database Computer Music Lylic Poem Upload Music Image Others Private(Owner s) 皆さんでもファイルをアップロード可能です。 ただし、1つのファイルにつき1Mまでです。 編集方法を見る。 名前 コメント
https://w.atwiki.jp/my-sql/pages/145.html
HOME 関数 その他の関数 DATABASE DATABASE DATABASE() カレントデータベース名を返す。 mysql SELECT DATABASE(); - test カレントデータベースがない場合、DATABASE() は、MySQL 4.1.1 以降では NULL を返し、それ以前のバージョンでは空の文字列を返す。
https://w.atwiki.jp/capu2/pages/67.html
データベース データベースPostgreSQL Microsoft SQL Server MySQL Oracle Database PostgreSQL 基本的に無料なオープンソースで開発されているデータベース管理システム。 RDB。 オープンソースでは、MySQLと並んで有名どころ。 Microsoft SQL Server Microsoft社の開発しているデータベース管理システム。 RDB。 実際に使ったこと無いけれど、知名度は高いし、採用している企業も少なくないだろう。 Visual Studioでシステム開発する場合、最も親和性、生産性の高いデータベースではなかろうか? MySQL 基本的に無料なオープンソースで開発されているデータベース管理システム。 RDB。 エンタープライズ版とかは有償か? 多くの企業のデータベースとしても採用されている実績があり、シェアも結構ある。 最近、Oracleが買収したとかしないとか? Oracle Database たぶん、世界シェアNo.1データベース管理システム。 多くのデータベース形式をサポートしていた気がする。忘れちゃったけど。 うろ覚えで正確な実売価格を知らないが、実際の運用版の導入には数百万円とか掛かってた気がする。インストールするコンピュータ・システムのCPUの個数で決まってた気がする。でも、システム開発しているSI企業では、契約していれば開発版が数千円くらいだったと思う。 Windows系、Unix/Linux系ともにサポート。Mac系は不明。 どうでもいいが、最近のバージョン表記にある「g」は、バージョン自体ではなくて「grid」の「g」らしい。
https://w.atwiki.jp/nicepaper/pages/374.html
MySQLのALTER句の使い方 目次 文法 実践 releasedをcreatedの後ろに追加 mycategoryをbodyの後ろに追加でdefaultは1とかにしてみる。 カラムを削除 mycategoryを削除してみる。 INDEXを追加 INDEXを削除 複合インデックス 文法 ALTER TABLE tbl_name ADD [COLUMN] column_definition AFTER col_name; 最初の場合 ALTER TABLE tbl_name ADD [COLUMN] column_definition FIRST; 実践 適当にデータベース作成 CREATE TABLE news( id INT UNSIGNED AUTO_INCREMENT primary key, title VARCHAR(64) NOT NULL, category tinyint NOT NULL, body text NOT NULL, url VARCHAR(255) NOT NULL, created DATETIME, modified DATETIME ); releasedをcreatedの後ろに追加 alter table news add released datetime after created; mycategoryをbodyの後ろに追加でdefaultは1とかにしてみる。 alter table news add mycategory tinyint default 1 after body; カラムを削除 mycategoryを削除してみる。 alter table news drop mycategory; INDEXを追加 ALTER TABLE news ADD INDEX index_posts_on_updated_at(updated_at); ALTER TABLE news ADD INDEX index_mycategory(mycategory); MULになる。 INDEXを削除 ALTER TABLE テーブル名 DROP INDEX インデックス名; ALTER TABLE news DROP INDEX index_mycategory; 複合インデックス ALTER TABLE posts ADD INDEX index_col1name_col2name(created_at, updated_at); ※適当にインデックス名を付ける
https://w.atwiki.jp/tdd1tessa/pages/56.html
REDOログファイルにはすべての変更が記録されており、データベースに障害が起きたときに必要になる。したがって、制御ファイルと同様に多重化を行い、障害に備える必要がある。 REDOログファイルは、データベースに対して実行された変更履歴情報を記録するファイルである。REDOログバッファ上に作成された変更履歴情報(REDO情報)を、LGWRがこのファイルに書き出す。 REDOログファイルに記録されているREDO情報は、データベースに障害が発生した際に再度同じ処理を実行することによりデータを復元(リカバリ)するために使用される。したがって、REDOログファイルの情報が欠けると、正常なリカバリが実行できない。このため、制御ファイル同様REDOログファイルも多重化し、障害に備えることが必要。 REDOロググループとREDOログメンバー REDOログファイルは、複数ファイルを循環して使用する。LGWRが書き込み対象としているファイルをカレントのREDOログファイルと呼ぶ。カレントのREDOログファイルが満杯になると、LGWRの書き込み先は次のファイルに移動する。このような書き込み先の変更をログスイッチという。ログスイッチはコマンドによって強制的に発生させることも可能である。 また、REDOログファイルは障害対策としてファイルを多重化し、同じ内容のファイルを複数持つことが可能である。この場合の同一内容を含んでいるファイルのグループをREDOロググループと呼ぶ。 LGWRは、同一グループ内のREDOログファイルに同じ情報を同時に書き込む。REDOログファイルは循環して使用されるため、最低2つのグループが必要である。また、グループ内の各REDOログファイルをREDOロググループという。 REDOログファイルの古い情報が上書きされた時点で、そのREDO情報はリカバリに使用できなくなる。これを避けるためにREDOログファイルのコピーであるアーカイブログファイルを作成する。 Enterprize ManagerによるREDOログファイルの確認 EnterPrize Managerのサーバタブ内の「REDOログ・グループ」ページで確認できる。ステータスのステータスがCurrentになっているグループが現在のLGWRの書き込み先として使用されていることがわかる。 EnterPrize ManagerによるREDOログファイルの多重化。 それぞれの「REDOログ・グループの編集」ページで、グループ内のメンバーを確認できる。このページ内の「追加」ボタンをクリックし、「REDOログ・メンバーの追加」ページを表示する。 要点チェック LGWRは、REDOログバッファ上に作成された変更履歴情報をREDOログファイルに書き出すプロセスである。 REDOログファイルの書き込み先は、ログスイッチが実行されたときに変更される。 REDOログファイルのコピーはアーカイブログファイルである。 戻る
https://w.atwiki.jp/odinms/pages/15.html
DataBase GM装備のID 1002140:Wizet Invincible Hat 1042003:Wizet Plain Suit 1062007:Wizet Plain Suit Pants 1322013:Wizet Secret Agent Suitcase 1072010:Black Dress Shoes GM書のID 2040603:Bottom for Def 2044503:Bow for ATT 2041024:Cape for Magic Def 2041024:Cape for Weapon Def 2044703:Claw for ATT 2044603:Crossbow for ATT 2043303:Dagger for ATT 2040807:Gloves for ATT 2040806:Gloves for DEX 2040006:Helmet for Def 2040007:Helmet for HP 2043103:O-H Axe for ATT 2043203:O-H BW for ATT 2043003:O-H Sword for ATT 2040506:Overall for DEX 2044403:Pole Arm for ATT 2040903:Shield for Def 2040709:Shoes for DEX 2040710:Shoes for Jump 2040711:Shose for Speed 2044303:Spear for ATT 2043803:Staff for MATT 2040403:Top for Def 2044103:T-H Axe for ATT 2044203:T-H BW for ATT 2044003:T-H Sword for ATT 2043703:Wand for MATT
https://w.atwiki.jp/atyou/pages/51.html
データベースを起動・停止する単位 Oracleサーバーは、 Oracleインスタンス Oracleデータベース から構成されている。 Oracleインスタンス Oracleインスタンスは、 システムグローバル領域(SGA)いう作業用メモリ空間 バックグラウンドプロセス から構成されている。 Oracleデータベースに対して、最低1つのOracleインスタンスが必要 1つのOracleサーバ上に複数のインスタンスを作成し、複数のデータベースを同時に使うこともできる。 『SGA(システムグローバル領域)』 共有プール ユーザー間で共有できるようにSQL文をキャッシュしたり、データディクショナリ結果をキャッシュしたりする データベースバッファキャッシュ データファイルから取り出したデータブロックをキャッシュする。問い合わせの場合もDML(Data Manipulation Language:データ操作言語)の場合も、一度データベースバッファキャッシュにキャッシュしてから処理を行う。DMLにて変更されたデータベースブロックはDBWnによってデータファイルに書き出される REDOログバッファ データベースに対する変更情報をREDOレコードとしてキャッシュする。REDOレコードはデータベースの回復のために使用され、LGWRによってREDOログファイルに書き出される Javaプール OracleJVM(Java仮想マシン)で動作するJavaコードやデータを格納する ラージプール 共有サーバ接続時のセッション関連メモリやI/O要求、Recovery Manager(RMAN)で使用するメモリを格納する。ラージプールはオプションメモリで、構成していない場合は共有プールが使用される 自動共有メモリ管理 Oracle Database 10gから「自動共有メモリ管理」機能が提供されるようになりました。 SGA全体のターゲットサイズを設定するだけで、Oracleサーバは以下のメモリを動的に調整してくれるようになります。 共有プール データベースバッファキャッシュ Javaプール ラージプール SGA全体のターゲットサイズは、「SGA_TARGET」初期化パラメータで設定します。 『バックグラウンドプロセス』 プロセス 説明 DBWn(データベースライタ) データベースバッファキャッシュ内の変更されたデータブロックをデータファイルに書き出す LGWR(ログライタ) REDOログバッファのREDOログレコードをREDOログファイルに書き出す CKPT(チェックポイント) チェックポイント(データベースバッファキャッシュとデータファイルの同期を取り、書き込みを保証するイベント)が発生した場合、DBWnにシグナルを送ってデータファイルに書き込ませ、その後データファイルと制御ファイルにチェックポイント情報を書き込む ARCn(アーカイバ) REDOログファイルのログスイッチ(切り替え)が発生した場合、アーカイブ領域にアーカイブログファイルを作成する。データベースがARCHIVELOGモードのときのみ起動するバックグラウンドプロセス SMON(システムモニタ) システム障害のためにデータベースが停止した場合、次回のインスタンス起動時にインスタンスリカバリを開始する PMON(プロセスモニタ) ユーザープロセスに障害が発生したとき、対応しているサーバプロセスのリソースを開放する ユーザーがアクセスするときは、アプリケーション側のプロセスとサーバ側のプロセスが通信します。 アプリケーション側のプロセスをユーザープロセス、サーバ側のプロセスをサーバプロセスと呼びます。 サーバプロセスやバックグラウンドプロセスは、PGA(プログラムグローバルエリア)と呼ばれる独自のメモリを持ちます。 Oracleデータベース Oracleデータベースは実際のファイルで構成されます。 制御ファイル データベースの物理構成やチェックポイント情報などの管理情報を格納したファイル REDOログファイル データベースに対する変更を格納し、システム障害があったときの回復処理に利用する。最低2つのグループを持ち、ログスイッチで切り替えながら循環して書き込みが行われる データファイル 表内のデータや索引など、すべてのデータベースデータを格納する。論理的には表領域に対応する REDOログファイル REDOログ・ファイルは、データに対して行われたすべての変更履歴を記録するファイルです。 そして、REDOログ・ファイルに記録された変更履歴を基に、障害時に失われたデータのリカバリを行います。 REDOログ・ファイルが記録している内容は、表に格納しているデータの変更だけではありません。 索引の付いている列に対して変更を行った場合、索引のデータの変更も記録します。 REDOログファイルは「グループ」で構成されます。グループには1つ以上のREDOログファイルを含めることができ、 1つのグループに複数のファイルが存在する場合は、それらは同じ内容を記述したコピーファイルです。 グループを構成するこれらのファイルを「メンバー」と呼びます。 グループへの書き込みは、LGWR(ログライタ)が行います。 REDOログファイルが満杯まで書き込まれるか、明示的にコマンドによる切り替えが行われると、次のグループに書き込みを開始します。 このような切り替えを「ログスイッチ」と呼びます。新しいグループには、「ログ順序番号」という内容を診断するための順序番号が新たに割り当てられ、 循環して上書きされても、どの時点のREDOログエントリであるかが判断できるようになっています。 LGWRは、グループ内の1つのメンバーにREDOログエントリを書き込むことができる限り、動作し続けることができます。 アーカイブログファイル REDOログファイルのバックアップに相当するファイル。 REDOログファイルのログスイッチ時にARCnによって作成される。 ディスク障害が発生した場合のリカバリ処理に利用される。 データベースがARCHIVELOGモードのときだけ作成されるファイル データファイル データファイルには、データベースが扱う実際のデータが格納されています。 データはサーバプロセスによりデータベースバッファキャッシュに読み込まれ、データベースバッファキャッシュ上で問い合わせや更新処理が行われます。 更新処理が行われたブロックは「使用済みバッファ」と呼ばれ、DBWn(データベースライタ)によってデータファイルに書き込まれます。 データファイルへの書き込みは、チェックポイント(CKPTによる信号送信)時、データベースバッファキャッシュのメモリ不足時、データベース停止時(ABORTによる停止を除く)に行われます。 コミット時にはデータファイルへの書き込みは行われません。コミット時は、LGWRによるREDOログファイルへの書き込みが行われているため、 障害発生時はREDOログファイルからのリカバリ処理で対応できるようになっています。 ■Oracleインスタンスの起動 http //www.atmarkit.co.jp/fdb/ref/ref_oracle/startup.html#01 Oracleサーバの起動には、インスタンスの起動とデータベースの起動が必要です。 インスタンス起動の準備 SQLPLUS /NOLOG ┗ 手順1 まず、データベースに接続せずに、SQL*Plus を起動します。コマンドラインから「/NOLOG」オプションを付けてSQLPLUSコマンドを発行します。 CONNECT username/password AS [SYSDBA | SYSOPER] ┗ 手順2 SQL*Plusセッションを起動したら、管理者アカウント(デフォルトではsysまたは system)として、SYSDBA(あるいはSYSOPER)システム権限でOracleデータベースに接続します。これで、データベース・インスタンスを起動する準備が完了します。 インスタンスを起動し、データベースをマウントしてオープンする STARTUP 1. NOMOUNT(インスタンスの起動:SGAを割り当て、バックグラウンドプロセスを起動) 初期化パラメータファイルを読み込み、SGAを割り当て、バックグラウンドプロセスを起動することで、インスタンスが起動します。 このとき、初期化パラメータCONTROL_FILESにて制御ファイルが識別されます。 新規にデータベースを作成する場合などにNOMOUNT(インスタンスのみの起動)を使用します。 初期化パラメータ Oracleインスタンスのメモリサイズなどは、インスタンスが起動するときに読み込まれる初期化パラメータファイルで設定されます。 初期化パラメータファイルには、 SPFILE(サーバパラメータファイル) PFILE(テキストのパラメータファイル) があります。 種類 説明 SPFILE Oracleサーバによる読み取りと書き込みが可能なバイナリ形式の初期化パラメータファイル。Oracleインスタンスを起動したままで動的に変更した初期化パラメータ値の保存が可能。PFILEよりも優先して読み込まれる PFILE Oracleサーバによる読み取りのみ可能なテキスト形式の初期化パラメータファイル。動的に変更した初期化パラメータ値はファイルに保存されないため、エディタなどで手動編集が必要 Database Controlでは、「管理」タブ→「インスタンス」リージョンの「すべての初期化パラメータ」から現在の初期化パラメータ値の参照や変更ができます。 「現行」タブか、「SPFile」タブの「SPFileモードでの変更を現在実行中のインスタンスに適用する」チェックボックスを使用すると、動的な変更が行えます 2. MOUNT(データベースのマウント:制御ファイルをオープン) 制御ファイル内に記録されているREDOログファイル、データファイルを識別します。 データベースのリカバリ作業などの特定処理を行う場合にはMOUNT(データベースのマウント)で起動することができます。 3. OPEN(データベースのオープン:データファイル、REDOログファイルをオープン) REDOログファイル、データファイルをオープンします。 特権ユーザー(SYSDBA、SYSOPER)以外のユーザーの接続が可能になります。 (通常のOracleユーザは、OPEN(データベースのオープン)するまでは接続できません。) ■インスタンスの停止 インスタンスを停止するときは、 標準(NORMAL) トランザクション(TRANSACTIONAL) 即時(IMMEDIATE) 中断(ABORT) の4つからオプションを選択します デフォルトは「即時」停止です。 ABORT処理で停止した場合、次回の起動時にインスタンスリカバリが必要であることに注意しましょう。 その場合のインスタンスのリカバリ情報は、アラートログから確認することができます。 ■初期化パラメータ 初期化パラメータには、インスタンスレベルで変更可能なものとセッションレベルで変更可能なもの、両方で変更可能なものがあります。 V$PARAMETERビューでは、セッションレベルで変更した値が表示されます。 SQL ALTER SYSTEM SET db_file_multiblock_read_count=16; システムが変更されました。 SQL ALTER SESSION SET db_file_multiblock_read_count=8; セッションが変更されました。 SQL SELECT name,value FROM v$parameter 2 WHERE name = db_file_multiblock_read_count ; NAME VALUE ------------------------------ ---------- db_file_multiblock_read_count 8 初期化パラメータは、すべてを調整する必要はありません。基本パラメータのみを調整すれば、最低限の動作は保証されます。拡張パラメータは特殊な要件の場合に使用します。 ■トレースファイル Oracleサーバの動作を確認するためのログファイルとして、アラートログファイルがあります。アラートログファイルには次のような情報が記録されます。 発生するすべての内部エラー(ORA-600)、ブロック破損エラー(ORA-1578)、デッドロックエラー(ORA-60) データベースの起動と停止、表領域の追加と削除、変更、ALTER DATABASE、ALTER SYSTEMコマンドといった管理作業 デフォルト値以外に設定された初期化パラメータ(インスタンス起動時) アラートログファイルとバックグラウンドプロセスが作成するトレースファイルは、BACKGROUND_DUMP_DEST初期化パラメータで指定したディレクトリ配下に生成されます。 SQL show parameter background_dump_dest NAME TYPE VALUE ------------------------------------ ----------- -------------- background_core_dump string partial background_dump_dest string /u01/app/.../bdump SQL !tail -100 /u01/app/.../bdump/alert_orcl.log Tue Nov 21 22 45 38 2006 Starting ORACLE instance (normal) LICENSE_MAX_SESSION = 0 LICENSE_SESSIONS_WARNING = 0 Picked latch-free SCN scheme 2 Using LOG_ARCHIVE_DEST_10 parameter default value as USE_DB_RECOVERY_FILE_DEST Autotune of undo retention is turned on. IMODE=BR ILAT =18 LICENSE_MAX_USERS = 0 SYS auditing is disabled ksdpec called for event 13740 prior to event group initialization Starting up ORACLE RDBMS Version 10.2.0.2.0. System parameters with non-default values processes = 150 __shared_pool_size = 125829120 shared_pool_size = 117440512 __large_pool_size = 4194304 large_pool_size = 4194304 __java_pool_size = 4194304 java_pool_size = 4194304 __streams_pool_size = 8388608 streams_pool_size = 8388608 ‥‥
https://w.atwiki.jp/wiki2_chobi/pages/16.html
データベースの作成手順 環境変数の設定 初期化パラメータファイルの作成 CONNECT / AS SYSDBA CREATE SPFILE FROM PFILE; インスタンスの起動 CONNECT / AS SYSDBA STARTUP NOMOUNT データベースの作成 CREATE DATABASE [データベース名] CREATE DATABASE文で指定できるもの REDOログファイル名、サイズ REDOログファイル最大グループ数 REDOログメンバ最大数 アーカイブREDOログファイルの最大数 データファイル最大数 インスタンス最大数 アーカイブログモード キャラクタセット ナショナルキャラクタセット SYSYTEM表領域データファイル名、サイズ、自動拡張、最大サイズ、 デフォルト一時表領域名、データファイル名、サイズ、エクステント管理 UNDO表領域名、データファイル名、サイズ、自動拡張、最大サイズ タイムゾーン sql.bsqスクリプトによって管理者ユーザSYSとSYSTEM、SYSTEMロールバックセグメント、データディクショナリ表が作成される データディクショナリビューの作成 SYSユーザでcatalog.sqlを実行し、データディクショナリ表に対するビュー、動的パフォーマンスビューに対するビュー、これらのビューのシノニムを作成する SYSユーザでcatproc.sqlを実行し、PL/SQLの環境を構築する SQL*Plusを使用する場合、SYSTEMユーザでSQL*Plusの製品情報を作成するpupbld.sqlを実行する OMF (Oracle-Managed Files) DB_CREATE_FILE_DEST デーファイルのデフォルトの作成ディレクトリ DB_CREATE_ONLINE_LOG_DEST_n REDOログファイルと制御ファイルのデフォルトの場所(最大5つまで) ALTER SYSTEM SETコマンドで動的変更可能 両方指定することも、一方のみ使用することも可能
https://w.atwiki.jp/kamiyoc/pages/18.html
設定確認 その他確認 設定変更 character_set ユーザー作成 DB・テーブル確認 DB作成 テーブル作成・編集 テーブルバックアップ・復元 ファイル出力 ログ出力 設定確認 C \ProgramData\MySQL\my.ini mysql show variables; mysql show variables like innodb_% ; mysql show variables like %mem% ; mysql show variables like %datadir% ; mysql status; SHOW WARNINGS; ポート確認 mysql show variables like port ; 上へ その他確認 処理中プロセス mysql show processlist; 現在の接続しているスレッド数 mysql show status like Threads_connected ; ロック確認 SHOW ENGINE INNODB STATUS; select * from information_schema.INNODB_TRX \G; select * from information_schema.INNODB_LOCKS \G; select * from information_schema.INNODB_LOCK_WAITS\G; SELECT @@GLOBAL.tx_isolation, @@tx_isolation; 大文字小文字の区別 show variables where variable_name= lower_case_table_names ; my.cnf [mysqld] lower_case_table_names = 0 で変更 DBサイズ SELECT table_schema, sum(data_length+index_length) /1024 /1024 AS MB FROM information_schema.tables GROUP BY table_schema ORDER BY sum(data_length+index_length) DESC; テーブルサイズ SELECT table_name, engine, table_rows AS tbl_rows, avg_row_length AS rlen, floor((data_length+index_length)/1024/1024) AS all_mb, floor((data_length)/1024/1024) AS data_mb, floor((index_length)/1024/1024) AS index_mb FROM information_schema.tables WHERE table_schema=database() ORDER BY (data_length+index_length) DESC; 上へ 設定変更 # service mysqld restart 再起動後、ログが適用されたら書き込みがないうちにすぐに停止 # service mysqld stop my.cnf でログファイルサイズの書き換え # vi /etc/my.cnf ログファイルの移動(念のため削除ではなくバックアップ) # mv /var/lib/mysql/ib_logfile* /(backupdir)/ mysqld 起動 # service mysqld start ログファイルが指定したサイズで再作成されたことを確認 # ls -l /var/lib/mysql/ib_logfile* ※ innodb_buffer_pool_size は[mysqld]の下に置く 上へ character set set character set charset_name -- 以下を実行したことと同様 set character_set_client = charset_name; set character_set_results = charset_name; set collation_connection = @@collation_database; -- collation_databaseと同じ値に設定する 上へ ユーザー作成 ユーザー確認 SELECT host,user FROM mysql.user; SELECT * FROM mysql.user \G; ユーザー作成 GRANT ALL PRIVILEGES ON *.* TO sasuke@localhost IDENTIFIED BY aaa WITH GRANT OPTION; rootのパスワード SET PASSWORD FOR root@localhost=PASSWORD( hoge ); ユーザー削除 DELETE FROM mysql.user WHERE user= sasuke ; 上へ DB・テーブル確認 show databases; show tables; SHOW CREATE TABLE tbl_name ; show procedure status; show function status; show create procedure プロシージャ名; select table_schema,table_name,table_type,table_rows,table_collation from information_schema.TABLES; カラム確認 select TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_DEFAULT,IS_NULLABLE,CHARACTER_SET_NAME ,COLUMN_TYPE,COLUMN_KEY,COLUMN_COMMENT from information_schema.COLUMNS; ビュー確認 SELECT * FROM information_schema.views WHERE TABLE_NAME = ビュー名 ストアド確認 SHOW CREATE FUNCTION test1 \G SHOW CREATE PROCEDURE test1 \G SELECT ROUTINE_SCHEMA, ROUTINE_NAME, ROUTINE_TYPE FROM information_schema.ROUTINES WHERE ROUTINE_TYPE = PROCEDURE ; 上へ DB・テーブル作成 DB作成 mysql CREATE DATABASE データベース名 CHARACTER SET utf8; DB削除 mysql DROP DATABASE test_db1; 上へ テーブル作成・編集 テーブル削除 DROP TABLE IF EXISTS `testdb`.`createtest`; テーブル追加 CREATE TABLE `testdb`.`createtest` ( `userid` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `password` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `email` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL, PRIMARY KEY (`userid`), KEY `username` (`username`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; テーブル編集 ALTER TABLE tbl_name ADD COLUMN col_name INT(11) DEFAULT 0 NOT NULL AFTER other_col_name; ALTER TABLE tbl_name CHANGE COLUMN old_col new_col INT(11) NOT NULL AUTO_INCREMENT; ALTER TABLE tbl_name MODIFY COLUMN col_name VARCHAR(128) NOT NULL; ALTER TABLE tbl_name DROP COLUMN col_name; alter table 対象テーブル add unique (対象フィールド); 上へ テーブルバックアップ・復元 バックアップ mysqldump -u napzak -p foo_db db_backup_`date +%Y%m%d-%H%M%S`.sql ストアドも mysqldump -R -u napzak -p foo_db db_backup.sql データのみダンプ mysqldump -u root -p DB名 --skip-dump-date --no-create-info --default-character-set=binary onlyData.sql スキーマとViewのみダンプ mysqldump -u root -p DB名 --no-data --skip-dump-date onlySchemaWithView.sql ストアドのみダンプ mysqldump -u root -p DB名 --skip-dump-date --no-create-info --no-data --routines onlyFunctions.sql テーブル単位 mysqldump -u root -p database_name table_name1 table_name2 dump.sql オプションの説明 --skip-dump-date ダンプした日を出力 --no-create-info create table文を出力しない --no-data データを出力しない --routines ストアド情報を出力 復元 shell mysql -u napzak -p --default-character-set=utf8 foo_db dump.sql または mysql source dump.sql 上へ ファイル出力 mysql -uroot -p -e "SELECT * FROM table_name" db_name /tmp/mysql.tsv SELECT * FROM test INTO OUTFILE /var/lib/mysql-files/test.dmp ; --secure-file-priv の権限が必要 上へ ログ出力 SET GLOBAL general_log= on SET GLOBAL log_output= table なんかやる SELECT * FROM mysql.general_log SET GLOBAL general_log= off 上へ ここを編集
https://w.atwiki.jp/rinn/pages/64.html
Database内のスキーマを簡単に調べる方法 現在運用中のデータベースにどんなスキーマが存在するかを調べる場合に 下記のコマンドを実行すると簡単にスキーマを調べることができます。 db2look -d database name -a -e -m -l -x -f -o db2look.sql database name にsampleなどデータベースの名前セットして実行すると、db2look.sqlに、スキーマ情報が出力されます。 db2look.sqlは、これを実行するとスキーマ(テーブル、インデックスなど)が何も無いところから再構成できるだけの情報がはいっています。 (例) -- This CLP file was created using DB2LOOK Version 9.1 -- Timestamp Wed 09 Apr 2008 04 37 33 PM JST -- Database Name SAMPLE -- Database Manager Version DB2/LINUX Version 9.1.2 -- Database Codepage 1208 -- Database Collating Sequence is IDENTITY CONNECT TO SAMPLE; ------------------------------------ -- DDL Statements for TABLESPACES -- ------------------------------------ CREATE LARGE TABLESPACE SYSTOOLSPACE IN DATABASE PARTITION GROUP IBMCATGROUP PAGESIZE 32768 MANAGED BY AUTOMATIC STORAGE AUTORESIZE YES INITIALSIZE 32 M MAXSIZE NONE EXTENTSIZE 4 PREFETCHSIZE AUTOMATIC BUFFERPOOL IBMDEFAULTBP テーブルスペースの生成からCREATE TABLE,CREATE INDEX等と続きます。 db2lookはもともと障害からの復旧用ツールになります。